#ifndef RD_CLIENTLOCALSYS_H_
#define RD_CLIENTLOCALSYS_H_

#include <string>
#include <vector>

#include "SSClient.h"

#ifdef WIN32
#include <WinUser.h>
#pragma pack(push)
#pragma pack(1)
#define Y_RD_PACKED
#else
#define Y_RD_PACKED __attribute__((packed))
#define WM_USER 0x0400
#endif

namespace qb {

enum {
  eFT_PL_LOGIN_OK = WM_USER + 5000,  // 6024 登陆系统服务器成功

  eFT_PL_SYS_TIME,  // 6025 系统时间--

  eFT_PL_MARKET_STATUS_OK,   // 6026 市场状态
  eFT_PL_MARKET_STATUS_NOK,  // 6027 市场状态

  eFT_PL_FORCE_QUIT,  // 6028 异地登陆下线--

  eFT_PL_RELOGIN,  // 6029 需要重新登录--

  eFT_PL_HEART_BREAK_SYS_OK,    // 6030 系统服务器连接心跳--
  eFT_PL_HEART_BREAK_SYS_NOK,   // 6031 系统服务器连接心跳--
  eFT_PL_HEART_RECONN_SYS_ING,  // 6032 重新连接系统服务器--
  eFT_PL_FILE_UPDATE,           // 6033 本地列表文件有更新
  eFT_PL_MICRO_UPDATE,          // 6034 宏观数据文件有更新
  eFT_PL_FINANCIALCOMP_UPDATE,  // 6035 机构表有更新
  eFT_PL_HEART_BREAK_SYS_OK2,   // 6036 重联成功标志（心跳灯专用）
  eFT_PL_HEART_BREAK_SYS_RECONN,       // 6037 系统断线，请求重新连接
  eFT_PL_HEART_BREAK_SYS_DELAY,        // 6038 网络延迟
  EFT_PL_HEART_BREAK_SYS_UNOBSTRUCTED  // 6039 网络通畅
};

struct _xWelcomeMsg_t {
  int encrpyt;
  int crc;
  int heart;
  int zip;
  int version;
};
typedef struct _xWelcomeMsg_t xWelcomeMsg_t;

//------------------交易服务

//--------------------------------------------------------------------------

struct _xMessageInfo_t {
  char* buffer;
  int length;
} Y_RD_PACKED;
typedef struct _xMessageInfo_t xMessageInfo_t;
//
}  // namespace qb

#ifdef WIN32
#pragma pack(pop)
#endif
#endif
